package nl.boektrust.btsoep.client;

import java.util.List;

import nl.boektrust.btsoep.shared.model.Person;
import nl.boektrust.btsoep.shared.model.PhysicalBookManifestation;

import com.google.gwt.user.client.rpc.AsyncCallback;

public interface PersistentServiceAsync {

	void persistBTEntity(String name, String url, AsyncCallback<Void> callback);

	void persistPerson(Person person, AsyncCallback<Void> callback);
    void getAllPersons(AsyncCallback<List<Person>> callback) throws IllegalArgumentException;
    void deletePerson(Person person, AsyncCallback<Void> callback) throws IllegalArgumentException;
    
    void persistPhysicalBookManifestation(PhysicalBookManifestation bookmf, AsyncCallback<Void> callback);
    void getAllPhysicalBookManifestations(AsyncCallback<List<PhysicalBookManifestation>> callback) throws IllegalArgumentException;
  //  void deletePerson(Person person, AsyncCallback<Void> callback) throws IllegalArgumentException;

	void deletePhysicalBookManifestation(PhysicalBookManifestation book,
			AsyncCallback<Void> callback);


}
